package com.kuaidi100.sdk.response.samecity;

import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * @Author: api.kuaidi100.com
 * @Date: 2021-03-02 11:04
 */
public class QueryResp {
    /**
     * 骑手姓名(订单处于下单成功、取消状态下为空)
     */
    private String courierName;
    /**
     * 骑手电话(订单处于下单成功、已签收、取消状态下为空)
     */
    private String courierPhone;
    /**
     * 预计送达时间(订单处于下单成功、已签收、取消状态下为空)
     */
    private String predictDeliveryTime;
    /**
     * 地图链接(订单处于下单成功、已签收、取消状态下为空)
     */
    private String trailUrl;
    /**
     * 当前骑手维度(订单处于下单成功、已签收、取消状态下为空)
     */
    private String lat;
    /**
     * 当前骑手经度(订单处于下单成功、已签收、取消状态下为空)
     */
    private String lng;
    /**
     * 订单状态( 0-下单成功 1-已接单 10-已取货 13-已签收 9-用户主动取消 99-订单已取消)
     */
    private Integer status;
    /**
     * 快递公司
     */
    private String com;
    /**
     * 快递公司
     */
    private String num;

    @Override
    public String toString() {
        try {
            ObjectMapper objectMapper = new ObjectMapper();
            return objectMapper.writeValueAsString(this);
        } catch (Exception e) {
            return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                    .append("courierName", courierName)
                    .append("courierPhone", courierPhone)
                    .append("predictDeliveryTime", predictDeliveryTime)
                    .append("trailUrl", trailUrl)
                    .append("lat", lat)
                    .append("lng", lng)
                    .append("status", status)
                    .append("com", com)
                    .append("num", num)
                    .toString();
        }
    }

    public String getCourierName() {
        return courierName;
    }

    public void setCourierName(String courierName) {
        this.courierName = courierName;
    }

    public String getCourierPhone() {
        return courierPhone;
    }

    public void setCourierPhone(String courierPhone) {
        this.courierPhone = courierPhone;
    }

    public String getPredictDeliveryTime() {
        return predictDeliveryTime;
    }

    public void setPredictDeliveryTime(String predictDeliveryTime) {
        this.predictDeliveryTime = predictDeliveryTime;
    }

    public String getTrailUrl() {
        return trailUrl;
    }

    public void setTrailUrl(String trailUrl) {
        this.trailUrl = trailUrl;
    }

    public String getLat() {
        return lat;
    }

    public void setLat(String lat) {
        this.lat = lat;
    }

    public String getLng() {
        return lng;
    }

    public void setLng(String lng) {
        this.lng = lng;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public String getCom() {
        return com;
    }

    public void setCom(String com) {
        this.com = com;
    }

    public String getNum() {
        return num;
    }

    public void setNum(String num) {
        this.num = num;
    }
}
